package net.lzzy.practices.services;

import net.lzzy.practices.constants.Messages;
import net.lzzy.practices.entities.Course;
import net.lzzy.practices.entities.User;
import org.springframework.data.jpa.repository.JpaRepository;

import java.util.List;
import java.util.UUID;

public interface CourseService{
    List<Course> get();
    List<Course> get(boolean open);
    List<Course> get(int page, int size);
    List<Course> get(boolean open,int page,int size);
    List<Course> getTeachersCourse(UUID teacherId);
    List<Course> getStudentsCourse(UUID studentId);

    Integer count();
    Integer count(boolean open);

    Course getById(UUID id);
    Course add(Course course);
    Course update(Course course,String token);
    Course openCloseCourse(UUID id,boolean open,String token);

    Messages remove(UUID id, String token);

    List<Course> page();
}
